home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh -e
- # upstart-job
- #
- # Symlink target for initscripts that have been converted to Upstart.
-
- set -e
-
- INITSCRIPT="$(basename "$0")"
- JOB="${INITSCRIPT%.sh}"
-
- if [ "$JOB" = "upstart-job" ]; then
- if [ -z "$1" ]; then
- echo "Usage: upstart-job JOB COMMAND" 1>&2
- exit 1
- fi
-
- JOB="$1"
- INITSCRIPT="$1"
- shift
- else
- if [ -z "$1" ]; then
- echo "Usage: $0 COMMAND" 1>&2
- exit 1
- fi
- fi
-
- COMMAND="$1"
- shift
-
-
- if [ -z "$DPKG_MAINTSCRIPT_PACKAGE" ]; then
- ECHO=echo
- else
- ECHO=:
- fi
-
- $ECHO "Rather than invoking init scripts through /etc/init.d, use the service(8)"
- $ECHO "utility, e.g. service $INITSCRIPT $COMMAND"
-
- case $COMMAND in
- status)
- $ECHO
- $ECHO "Since the script you are attempting to invoke has been converted to an"
- $ECHO "Upstart job, you may also use the $COMMAND(8) utility, e.g. $COMMAND $JOB"
- $COMMAND "$JOB"
- ;;
- start|stop|restart)
- $ECHO
- $ECHO "Since the script you are attempting to invoke has been converted to an"
- $ECHO "Upstart job, you may also use the $COMMAND(8) utility, e.g. $COMMAND $JOB"
- PID=$(status "$JOB" 2>/dev/null | awk '/[0-9]$/ { print $NF }')
- if [ -z "$PID" ] && [ "$COMMAND" = "stop" ]; then
- exit 0
- elif [ -n "$PID" ] && [ "$COMMAND" = "start" ]; then
- exit 0
- elif [ -z "$PID" ] && [ "$COMMAND" = "restart" ]; then
- start "$JOB"
- exit 0
- fi
- $COMMAND "$JOB"
- ;;
- reload|force-reload)
- $ECHO
- $ECHO "Since the script you are attempting to invoke has been converted to an"
- $ECHO "Upstart job, you may also use the $COMMAND(8) utility, e.g. $COMMAND $JOB"
- reload "$JOB"
- ;;
- *)
- $ECHO
- $ECHO "The script you are attempting to invoke has been converted to an Upstart" 1>&2
- $ECHO "job, but $COMMAND is not supported for Upstart jobs." 1>&2
- exit 1
- esac
-